package com.hu.bgp.client.rpc;

import com.google.gwt.user.client.rpc.AsyncCallback;
import com.hu.bgp.client.ClientGameContext;
import com.hu.bgp.framework.clientapi.GameID;
import com.hu.bgp.shared.data.ClientGameSession;
import com.hu.bgp.shared.data.ClientGameSessionCollection;
import com.hu.bgp.shared.data.ClientGameTypeCollection;

public interface BgpServiceAsync
{

	public void joinGame(GameID gameID, AsyncCallback<Void> callback);

	public void getClientGameTypeCollection(
			AsyncCallback<ClientGameTypeCollection> callback);

	public void getClientGameContext(GameID gameID, AsyncCallback<ClientGameContext> callback);

	void createGame( String gameAlias,
			AsyncCallback<ClientGameSession> callback);

	void login(String username, String password, AsyncCallback<Void> callback);

	void getClientGameSessionCollection(String gameTypeAlias,
			AsyncCallback<ClientGameSessionCollection> callback);


}
